package org.graduation.recruitment.entity.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;

/**
 * 用户抽象类，所有用户继承该类。
 */
@Data
public abstract class User {
    @JsonSerialize(using = ToStringSerializer.class)
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;
    private String password;

    /**
     * 获取用户类型，确定是学生用户还是企业用户。
     *
     * @return
     */
    public abstract String getUserType();

    public void hidePassword() {
        setPassword("");
    }
}
